import classNames from 'classnames'
type Prop = {
  //表示可以传递任意自定义参数
  [key:string]:any
  // 这三个主动声明，调用组件的时候会有提示
  type: IconType
  className?: string
  onClick?:()=>void
}

export default function Icon({ type, className,...rest }: Prop) {
  return (
    <svg {...rest} className={classNames('icon', className)} aria-hidden="true">
      <use xlinkHref={'#' + type}></use>
    </svg>
  )
}

export type IconType =
  | "iconphoto-fail"
  | "iconphoto"
  | "iconbtn_right"
  | "iconicon_unenjoy1"
  | "iconicon_feedback1"
  | "iconicon_upload"
  | "iconbianji"
  | "icongengduo"
  | "iconfanhui"
  | "iconbtn_history1"
  | "iconbtn_readingtime"
  | "iconbtn_like2"
  | "iconbtn_pic"
  | "iconbtn_mine"
  | "iconbtn_channel"
  | "iconbtn_channel_close"
  | "iconbtn_comment"
  | "iconbtn_home_sel"
  | "iconbtn_collect_sel"
  | "iconbtn_mine_sel"
  | "iconbtn_collect"
  | "iconbtn_qa_sel"
  | "iconbtn_like_sel"
  | "iconbtn_feedback"
  | "iconbtn_del"
  | "iconbtn_tag_close"
  | "iconbtn_essay_close"
  | "iconbtn_qa"
  | "iconbtn_myworks"
  | "iconicon_blacklist"
  | "iconbtn_mycollect"
  | "iconbtn_video_sel"
  | "iconbtn_share"
  | "iconbtn_mymessages"
  | "iconbtn_search"
  | "iconbtn_like"
  | "iconbtn_xiaozhitongxue"
  | "iconbtn_video"
  | "iconbtn_home"